Analyzing Overheads and Scalability Characteristics of OpenMP Applications
نویسندگان
چکیده
Analyzing the scalability behavior and the overheads of OpenMP applications is an important step in the development process of scientific software. Unfortunately, few tools are available that allow an exact quantification of OpenMP related overheads and scalability characteristics. We present a methodology in which we define four overhead categories that we can quantify exactly and describe a tool that implements this methodology. We evaluate our tool on the OpenMP version of the NAS parallel benchmarks.
منابع مشابه
Empirical Comparison of Filtering Techniques for On-the-fly Data Race Detection in OpenMP Programs
It is a well-known that data races in implicit threading applications, such as OpenMP programs, are the most notorious class of concurrency bugs, because they may lead to unpredictable results of the program. The main drawback of on-the-fly data race detection techniques is the heavy additional overheads for analyzing every memory operations and thread operations, such as load, store, fork, and...
متن کاملExtending an Application-Level Checkpointing Tool to Provide Fault Tolerance Support to OpenMP Applications
Despite the increasing popularity of shared-memory systems, there is a lack of tools for providing fault tolerance support to shared-memory applications. CPPC (ComPiler for Portable Checkpointing) is an application-level checkpointing tool focused on the insertion of fault tolerance into long-running MPI applications. This paper presents an extension to CPPC to allow the checkpointing of OpenMP...
متن کاملEvaluating OpenMP 3.0 Run Time Systems on Unbalanced Task Graphs
The UTS benchmark is used to evaluate task parallelism in OpenMP 3.0 as implemented in a number of recently released compilers and run-time systems. UTS performs parallel search of an irregular and unpredictable search space, as arises e.g. in combinatorial optimization problems. As such UTS presents a highly unbalanced task graph that challenges scheduling, load balancing, termination detectio...
متن کاملOpenMP benchmark using PARKBENCH
Real application codes in OpenMP obviously measure the performance of OpenMP programming on the real problems. Although this is ultimately what the end-user wants, the full real applications are often complex and large. In order to obtain a guide to the performance of OpenMP parallel programs in any given parallel systems, kernel and synthetic benchmarks are useful. PARKBENCH[4] is a set of ben...
متن کاملTowards Efficient OpenMP Strategies for Non-Uniform Architectures
Memory Access (NUMA) based processors architectures. In these architectures, analyzing and considering the non-uniformity is of high importance for improving scalability of systems. In this paper, we analyze and develop a NUMA based approach for the OpenMP parallel programming model. Our technique applies a smart threads allocation method and an advanced tasks scheduling strategy for reducing r...
متن کامل